Keycloak 是一款開源的身份和存取管理(IAM)解決方案,提供單一登入(SSO)功能,讓開發者可以輕鬆為應用程式和服務新增認證、授權和使用者管理功能,而無需自己編寫複雜的程式碼。它支援多種標準協議,如 OpenID Connect 和 OAuth 2.0,並能與社交帳戶(如 Google、Facebook)和企業目錄(如 LDAP)整合。(Google AI 摘要)
因為專題需要用到身分授權服務
# ======= KEYCLOAK ========
keycloak:
container_name: keycloak
image: quay.io/keycloak/keycloak:latest
command: start-dev --proxy-headers=xforwarded
environment:
- KC_BOOTSTRAP_ADMIN_USERNAME=""
- KC_BOOTSTRAP_ADMIN_PASSWORD=""
- KC_PROXY=edge
- KC_HTTP_RELATIVE_PATH=/keycloak
- KC_HOSTNAME=""
- KC_HOSTNAME_PATH=/keycloak
- KC_DB=postgres
- KC_DB_URL=jdbc:postgresql://db:1234/keycloak
- KC_DB_USERNAME=""
- KC_DB_PASSWORD=""
ports:
- "8081:8080"
volumes:
- ./keycloak-data:/opt/keycloak/data
networks:
- keycloak_net
備註:(https://github.com/keycloak/keycloak)